package com.jai.oa.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * TimeLog对象 oa_timelog
 * 
 * @author hlzhang
 * @date 2024-09-25
 */
public class TimeLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 用户名 */
    @Excel(name = "用户名")
    private String userName;

    /** 用户昵称 */
    @Excel(name = "用户昵称")
    private String userNick;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 项目编码 */
    @Excel(name = "项目编码")
    private String projectCode;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String projectName;

    /** 类别 */
    @Excel(name = "类别")
    private Integer timelogCategory;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date timelogDate;

    /** 开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTimelogDate;
    /** 结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTimelogDate;



    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date startTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date endTime;

    /** 时长 */
    @Excel(name = "时长")
    private Long durationTime;

    /** 任务名称 */
    @Excel(name = "任务名称")
    private String taskName;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String deptName;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setUserNick(String userNick) 
    {
        this.userNick = userNick;
    }

    public String getUserNick() 
    {
        return userNick;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setProjectCode(String projectCode) 
    {
        this.projectCode = projectCode;
    }

    public String getProjectCode() 
    {
        return projectCode;
    }
    public void setProjectName(String projectName) 
    {
        this.projectName = projectName;
    }

    public String getProjectName() 
    {
        return projectName;
    }
    public void setTimelogCategory(Integer timelogCategory) 
    {
        this.timelogCategory = timelogCategory;
    }

    public Integer getTimelogCategory() 
    {
        return timelogCategory;
    }
    public void setStartTimelogDate(Date startTimelogDate)
    {
        this.startTimelogDate = startTimelogDate;
    }

    public Date getStartTimelogDate()
    {
        return startTimelogDate;
    }
    public void setEndTimelogDate(Date endTimelogDate)
    {
        this.endTimelogDate = endTimelogDate;
    }

    public Date getEndTimelogDate()
    {
        return endTimelogDate;
    }
    public void setTimelogDate(Date timelogDate)
    {
        this.timelogDate = timelogDate;
    }

    public Date getTimelogDate()
    {
        return timelogDate;
    }
    public void setStartTime(Date startTime) 
    {
        this.startTime = startTime;
    }

    public Date getStartTime() 
    {
        return startTime;
    }
    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }
    public void setDurationTime(Long durationTime) 
    {
        this.durationTime = durationTime;
    }

    public Long getDurationTime() 
    {
        return durationTime;
    }
    public void setTaskName(String taskName) 
    {
        this.taskName = taskName;
    }

    public String getTaskName() 
    {
        return taskName;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setDeptName(String deptName) 
    {
        this.deptName = deptName;
    }

    public String getDeptName() 
    {
        return deptName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("userNick", getUserNick())
            .append("projectId", getProjectId())
            .append("projectCode", getProjectCode())
            .append("projectName", getProjectName())
            .append("timelogCategory", getTimelogCategory())
            .append("timelogDate", getTimelogDate())
            .append("startTimelogDate", getStartTimelogDate())
            .append("endTimelogDate", getEndTimelogDate())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("durationTime", getDurationTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("taskName", getTaskName())
            .append("deptId", getDeptId())
            .append("deptName", getDeptName())
            .toString();
    }
}
